/*
*所有关于BOM类的业务代码接口应在此处编写
*/
using System.Linq.Expressions;
using VOL.Core.BaseProvider;
using VOL.Core.Utilities;
using VOL.Entity.DomainModels;
using VOL.Smartmanufacturing.DTO.Bom;
using VOL.Smartmanufacturing.DTO.SmartDisplayWall;
namespace VOL.Smartmanufacturing.IServices
{
    public partial interface IBOMService
    {
        /// <summary>
        /// 显示bom数据
        /// </summary> 
        /// <param name="getBomDto">查询分页参数</param>
        /// <returns></returns>
        Task<ApiPaging<BOM>> GetBom(GetBomDto getBomDto);


        /// <summary>
        /// 添加Bom
        /// </summary>
        /// <param name="bom"></param>
        /// <returns></returns>
        Task<int> AddBom(BOM bom);


        /// <summary>
        /// 删除Bom
        /// </summary>
        /// <param name="ids"></param>
        /// <returns></returns>
        Task<int> DelBom(string ids);

        /// <summary>
        /// 修改bom数据
        /// </summary>
        /// <param name="bom">bom实体</param>
        /// <returns></returns>
        Task<int> UpDateBom(BOM bom);

        /// <summary>
        /// 批量添加BOM
        /// </summary>
        /// <returns></returns>
         Task<int> AddBomlist(List<BOM> boms);
        /// <summary>
        /// 显示物料信息
        /// </summary>
        /// <param name="dto"></param>
        /// <returns></returns>
        Task<ApiPaging<Material>> GetMaterial(GetMaterialDTO dto);

        /// <summary>
        /// 一周不良品统计
        /// </summary>
        /// <returns></returns>
         Task<List<EchartsRespDto>> GetSmartDisplayWall(int days = 7);
        /// <summary>
        ///订单今日进度
        /// </summary>
        /// <returns></returns>
        Task<List<DailyPlanModel>> GetDailyPlanModel();


        /// <summary>
        /// 批量添加
        /// </summary>
        /// <returns></returns>
         Task<int> AddBOMlist(List<BOM> bomlist);


        /// <summary>
        /// 获取当前班组
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        Task<List<Team>> GetTeam();




    }
 }
